package com.ebupt.migu.music.system.service;

import com.ebupt.migu.music.common.entity.ResultObject;
import com.ebupt.migu.music.system.mapper.DeptMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Map;

@Service

public class DeptService {

    @Autowired
    private DeptMapper deptMapper;

    /**
     * 查询全部部门信息
     *
     * @return
     */
    public List<Map<String, Object>> queryAll(Map<String, Object> params) {

        if ("1".equals(params.get("isAdmin").toString())||
                "1".equals(params.get("isSuperAdmin").toString())) {
            // 系统管理员和超级管理员查询全部部门信息
            return deptMapper.queryAll(null);
        } else {
            // 非超级管理员只返回当前部门
            return deptMapper.queryAll(params.get("creatorDepartment").toString());
        }
    }

    public ResultObject<List<Map<String, Object>>> queryDept(Map<String, Object> params) {
        List<Map<String, Object>> data;
        if ("1".equals(params.get("isAdmin").toString()) || "1".equals(params.get("isFAGAdmin").toString())) {
            // 超级管理员和全量人群管理员可以查询所有部门信息
            data = deptMapper.queryAll(null);
        } else {
            // 其他的只能查询本部门信息
            data = deptMapper.queryAll(params.get("creatorDepartment").toString());
        }
        return new ResultObject<>("0000", "查询成功！", data);
    }
}
